package com.xlh.service.problem;

import com.xlh.dto.problem.ProblemDTO;
import com.xlh.dto.problem.UserProblemAndAnswerDTO;
import com.xlh.param.problem.ProblemParam;
import com.xlh.param.problem.ProblemPostParam;
import com.xlh.param.problem.ReplyPostParam;

import java.util.List;

public interface ProblemService {

    List<ProblemDTO> listProblemPages(ProblemParam problemParam);

    ProblemDTO problemDetailById(Long id);

    List<ProblemDTO> listMyProblemReplyPages(ProblemParam problemParam);

    void askQuestions(ProblemPostParam problemPostParam);

    void batchDeletionQuestion(List<Integer> ids);

    void changeNumberAnswers(ReplyPostParam replyPostParam);

    /**
     * 问题交流（查询未删除）
     * 表：pc_problem、pc_reply
     * 目的：查询每个学生的问题交流情况
     * 参数：Long courseId、List<Long> userIds
     * 返回值：List<问题交流对象> 必须包含：提问问题总数、回答问题总数、courseId、userId
     */
    List<UserProblemAndAnswerDTO> findProblemAndAnswerInfoByUser(Long courseId, List<Long> userIds);


}
